Computer software applications written in programming languages, e.g., C or C++, are delivered in the form of compiled binary executable files, so that the source code of the program are well protected from view. Conversely, software systems written in interpretive or scripting languages, e.g., Tcl or Perl, are commonly delivered in the form of readable source code or scripts in text-readable format. Often, compiled software applications are also delivered with certain supporting data files that can be in the form of readable text of any formats, such as scripts in Tcl or Perl. The textual form of delivery for software applications provides the advantages of being platform independent and easy for customization; nevertheless it leaves the source code of the script file viewable with any text reader, and conversely any intellectual property contained within the scripts is easily viewable and thus unprotected. Critical and/or sensitive source scripts or supporting data files in textual form are not protected against inadvertent or improper alterations. Software elements in textual form are also inadequate to be protected against unauthorized uses.
To solve these problems, commercial software applications will sometimes compile the deliverable source code or supporting data files into binary images. Although this approach provides good protection, it requires the deliverable files be prepared individually for each computer platform because compiling object code from source code is typically platform dependant.
What is needed is a system and method for text-based source code encryption that is platform independent.